草庐IT

python GUI 与 Swing 相比?

全部标签

Java Swing - 在带有线条边框的 TextArea 上设置边距

正如标题所说,我只是想在带有LineBorder集的TextArea上设置边距(提供一些填充)。在不设置边框的情况下,.setMargins可以正常工作。这是具体的代码块。aboutArea=newJTextArea("programinfoetc.....");Borderborder=BorderFactory.createLineBorder(Color.BLACK);aboutArea.setSize(400,200);aboutArea.setBorder(border);aboutArea.setEditable(false);aboutArea.setFont(newFo

java - 如何使用swing类Java绘制网格并在单击和拖动时检测鼠标位置

我正在尝试使用Swing类创建一个网格UI(5*5)。我尝试了一个嵌套循环并将jPanel动态添加到jFrame。而且我还尝试在用户单击并拖放到每个jPanel上时更改它的背景颜色。但是在我的代码中,每个单元格之间存在巨大的间隙,我无法使拖动事件起作用。publicclassclsCanvasPanelextendsJPanel{privatestaticfinalintintRows=5;privatestaticfinalintintCols=5;privateListjpllist=newArrayList();publicclsCanvasPanel(){/***Addeven

Java Swing : Enabling/Disabling all components in JPanel

我有一个JPanel,其中包含一个JToolbar(包括几个没有文本的按钮)和一个JTable,我需要启用/禁用(使内部小部件不可点击)。我试过这个:JPanelpanel=....;for(Componentc:panel.getComponents())c.setEnabled(enabled);但它不起作用。是否有更好、更通用的解决方案来启用/禁用JPanel中的所有内部组件?从这里的示例开始,我已经使用JLayer部分解决了我的问题http://docs.oracle.com/javase/tutorial/uiswing/misc/jlayer.html:layer=newJ

Swing组件和jdk版本问题

我有一个组合框。在组合框中选择一个项目后,新的JDialog打开。当我使用JDK1.6_06时,我能够点击JDialog中的按钮适本地。当我使用JDK1.6_24时,然后我需要点击首先是JDialog。然后只需点击按钮有效。首先我认为这个焦点有问题。但组件与JDK配合良好1.6_06。但这只是JDK1.6_24的问题。我试着用谷歌搜索它。但没有找到任何答案。有人知道吗? 最佳答案 我不知道java版本-但将dialog.setVisible(true)放在SwingUtilities#invokeLater中为我解决了这个问题。YM

Java Swing多线程访问JTextArea

我有一个多线程JavaSwing应用程序。多个线程将通过textArea.append("something")写入JTextArea来调用该方法。我应该这样包装吗:SwingUtilities.invokeLater(newRunnable(){@Overridepublicvoidrun(){textArea.append("something");}});或者它只是一个内容更新,Swing会自己做正确的线程? 最佳答案 一般来说,您对Swing所做的任何更新,尤其是任何更改控件状态或布局的操作,都应该在Swing线程中完成。在

java - 在*多线程* Swing 应用程序中使用 Hibernate 进行 session 管理

我目前正在从事我的一个(相当大的)宠物项目,一个本质上需要多线程的Swing应用程序。几乎所有的用户交互都可能通过互联网从一些远程服务器获取数据,因为我既不控制这些服务器也不控制互联网本身,因此较长的响应时间是不可避免的。当EDT繁忙时,SwingUI显然无法重绘自身,因此所有远程服务器调用都需要由后台线程执行。我的问题:后台线程获取的数据通过本地(内存中)数据库中的数据“丰富”(远程服务器返回本地数据库中数据的ID/引用)。这些数据后来最终被传递到EDT,在那里它成为View模型的一部分。某些实体此时未完全初始化(启用延迟获取),因此用户可能会触发延迟获取,例如在JTable中滚动。

java - 与 Statement 相比,使用 PreparedStatement 有什么缺点吗

我正在研究JDBC中Statement和PreparedStatement之间的差异,并看到了很多优点here和herePreparedStatement与Statement的比较。我的一些同事问为什么我们仍然需要Statement,为什么不反对使用PreparedStatement的优点。那么还有什么理由让我们在JDBCAPI中仍然保留Statement吗? 最佳答案 PreparedStatement用于处理动态SQL查询,其中Statement用于处理静态SQL查询。 关于java

Java 游戏 2D 重叠阴影与 Swing

我目前正在使用Swing作为我的主要绘图组件开发2DJava游戏。每个对象都有一个阴影(BufferedImage),但每个阴影都与其他阴影重叠。是否可以只让阴影不相互重叠?因为如果物体在玩家下方,我仍然希望阴影覆盖玩家,如果物体在玩家上方,则不会。为清楚起见,这里有一张图片:我看过alpha合成,我想我需要SourceOut?我还考虑过将所有阴影(没有透明度)绘制在一层上,然后以透明度绘制它,但它不会像以前那样绘制在播放器和其他对象上。我有一个Draw对象,它是一个JPanel并覆盖了paintComponent方法。在这个方法中,我绘制当前房间的地板,然后遍历属于当前房间的对象列表

英特尔 HD 3700 linux 的 Java 8 Swing 渲染问题

我在Kubuntu18.04的java8update181中开发了一个应用程序。在我的开发PC中,我有带有Intel®HDGraphics530的Inteli3-6100。所有图形都是使用Swing完成的,并且使用这种硬件配置,一切正常。在生产PC上,我有Intel(R)Celeron(R)CPUJ1900和Intel®HDGraphicsforIntelAtom®ProcessorZ3700Series。使用相同的操作系统和Java版本运行相同的版本我注意到我的图形在Swing中出现问题。Swing组件如jLabels、jButton等不更新。例如,框架A的标签B带有文本“旧文本”,

java - Swing GUI 与域逻辑通信的最佳方式?

我在许多POJO中实现了一些域逻辑。我想编写一个Swing用户界面以允许用户启动并查看各种域操作的结果。UI和域之间通信的最佳模式/框架/库是什么?这归结为:能够将用户手势转换为域操作的UI能够将状态/结果信息发送回UI以供显示的域我知道MVC是一个宽泛的概念,并且研究过Observer模式(如果我理解正确的话,它的Java实现有一些缺点),但我想知道这个问题是否有公认的最佳实践? 最佳答案 绝对是MVC-像这样的东西example这清楚地把事情分开了。Swing示例的问题在于它们似乎显示MVC都在swing中工作,这对我来说似乎不